Έστω ότι τη χρονική στιγμή t το αναμενόμενο πλήθος αριστερών είναι aristeroi[t] και των δεξιών dexioi[t].
Θεωρούμε ότι το παιδί ενός αριστερού παραμένει αριστερό με κάποια πιθανότητα ή γίνεται δεξιό με κάποια άλλη πιθνότητα. Συγκεκριμένα, θεωρούμε πως αν υπάρχουν μόνο αριστεροί στην κοινωνία, τότε η πιθανότητα κάποιος αριστερός να κάνει δεξιό παιδί είναι a0. Από την άλλη, αν δεν υπάρχουν σχεδόν καθόλου αριστεροί, το να παραμείνει αριστερό ένα παιδί αριστερού έχει πιθανότητα a1. Ή, με άλλα λόγια, θα γίνει δεξιό με πιθανότητα 1-a1. Για τις ενδιάμεσες περιπτώσεις θεωρούμε πως η πιθανότητα να γίνει δεξιό το παιδί αριστερού είναι κάτι ενδιάμεσο των a0 και 1-a1. Για την ακρίβεια, θεωρούμε πως κάθε ποσοστιαία αύξιση των δεξιών επιφέρει ανάλογη αύξηση της πιθανότητας το παιδί να γίνει δεξιό. Έτσι, τη χρονική στιγμή t η πιθανότητα ένα παιδί αριστερού να γίνει δεξιό θα είναι a0+(1-a1-a0)dexioi[t]/(aristeroi[t]+dexioi[t]). Με απλές πράξεις προκύπτει ότι τη χρονική στιγμή t η πιθανότητα ένα παιδί αριστερού να παραμείνει αριστερό είναι 1-a0+(a1-1+a0)dexioi[t]/(aristeroi[t]+dexioi[t]).
Με την ίδια λογική έχουμε ότι η πιθανότητα ένα παιδί δεξιού να γίνει αριστερό είναι d0+(1-d1-d0)aristeroi[t]/(aristeroi[t]+dexioi[t]), ενώ η πιθανότητα να παραμείνει δεξιό είναι 1-d0+(d1-1+d0)aristeroi[t]/(aristeroi[t]+dexioi[t]).
Συνεπώς, αν κάθε άνθρωπος κάνει c παιδιά, τότε ο αναμενόμενος αρθμός αριστερών τη χρονική στιγμή t+1 θα είναι:
(1-a0+(a1-1+a0)dexioi[t]/(aristeroi[t]+dexioi[t]))*c*aristeroi[t]+(d0+(1-d1-d0)aristeroi[t]/(aristeroi[t]+dexioi[t]))*c*dexioi[t],
ενώ ο αναμενόμενος αριθμός δεξιών θα είναι:
(a0+(1-a1-a0)dexioi[t]/(aristeroi[t]+dexioi[t]))*c*aristeroi[t]+(1-d0+(d1-1+d0)aristeroi[t]/(aristeroi[t]+dexioi[t]))*c*dexioi[t].
Για να προχωρήσει η μοντελοποίηση, θεωρούμε ότι ο κάθε ένας κάνει 2 παιδιά (c=2), ότι ξεκινάμε με 10000 αριστερούς (aristeroi[0]=10000), με 90000 δεξιούς (dexioi[0]=90000) και ότι:
a0=0.1a1=0.3d0=0.2d1=0.1Τοιαύτη περιπτώσει το ποσοστό των αριστερών στην κοινωνία τείνει να γίνει σε βάθος χρόνου 73%, όπως δείχνει το κάτωθι γράφημα.
Clear["Global`*"]
c=2;
a0=0.1;
a1=0.3;
d0=0.2;
d1=0.1;
aristeroi[0]=10000;
dexioi[0]=90000;
aristeroi[n_] := aristeroi[n] = (1-a0+(a1-1+a0)dexioi[n-1]/(aristeroi[n-1]+dexioi[n-1]))*c*aristeroi[n-1]+(d0+(1-d1-d0)aristeroi[n-1]/(aristeroi[n-1]+dexioi[n-1]))*c*dexioi[n-1]
dexioi[n_] := dexioi[n] =(a0+(1-a1-a0)dexioi[n-1]/(aristeroi[n-1]+dexioi[n-1]))*c*aristeroi[n-1]+(1-d0+(d1-1+d0)aristeroi[n-1]/(aristeroi[n-1]+dexioi[n-1]))*c*dexioi[n-1]
aProp = Table[aristeroi[n]/(aristeroi[n]+dexioi[n]),{n,0,50}];
ListPlot[aProp, PlotLabel -> "Ποσοστό αριστεράς"]
dProp = Table[dexioi[n]/(aristeroi[n]+dexioi[n]),{n,0,50}];
ListPlot[dProp, PlotLabel -> "Ποσοστό δεξιάς"]Στο παρακάτω γράφημα παρακολουθούμε τη γραμμική συνεξέλιξη των ποσοστών αριστερών και δεξιών στην κοινωνία, μέχρι το σημείο όπου αυτοί σταθεροποιούνται.
(* Υπολογισμός των διανυσμάτων *)
listAB2 = Table[{aristeroi[n]/(aristeroi[n]+dexioi[n]), dexioi[n]/(aristeroi[n]+dexioi[n])}, {n, 0, 55}];
ListPlot[listAB2, AxesLabel -> {"αριστεροί","δεξιοί"}]Προκειμένου να βρούμε μια πιο συγκεκριμένη τιμή για την τιμή ισορροπίας των δύο ποσοστών, συμβολίζουμε το ποσοστό των αριστερών μια τυχαία χρονική περίοδο (αδιάφορο ποια) ως pa, το ποσοστό των δεξιών ως pd και τον πληθυσμό ως pop, έχουμε ότι την επόμενη χρονική στιγμή το ποσοστό των αριστερών και των δεξιών αντίστοιχα θα είναι:
Clear["Global`*"]
ar2 = (1-a0+(a1-1+a0)pd)*c*pa*pop+(d0+(1-d1-d0)pa)*c*pd*pop;
de2 = (a0+(1-a1-a0)pd)*c*pa*pop+(1-d0+(d1-1+d0)pa)*c*pd*pop;
pa2 = ar2/(ar2+de2)//Simplify
pd2 = de2/(ar2+de2)//SimplifyΒλέπουμε ότι τα εν λόγω ποσοστά δεν εξαρτόνται από την τιμή του πληθυσμού pop, επομένως, αναφορικά με τους πληθυσμούς μας, τα ποσοστά των αριστερών και των δεξιών εξαρτώνται μονάχα από τα ποσοστά την προηγούμενη στιγμή.
Επομένως πρέπει να λύσουμε το σύστημα εξισώσεων ως προς pa και pd:
eqAr = pa2==pa
eqDe = pd2==pd
Solve[{eqAr,eqDe},{pa,pd}]//TableFormΕπειδή το γενικό αποτέλεσμα είναι αρκετά περίπλοκο, επανερχόμαστε στις τιμές που είχαμε δώσει πριν:
c=2a0=0.1a1=0.3d0=0.2d1=0.1Τοιαύτη περιπτώσει οι τιμές ισορροπίας είναι:
c=2;
a0=1/10;
a1=3/10;
d0=2/10;
d1=1/10;
Solve[{eqAr,eqDe},{pa,pd}]//TableFormΉ σε προσεγγιστική μορφή:
NSolve[{eqAr,eqDe},{pa,pd}]//TableFormΠροφανώς, η 2η λύση είναι απαράδεκτη βάσει της ερμηνείας των ποσοστών, άρα έχουμε την 1η, η οποία και ταιριάζει με αυτό που είχαμε βρει αρχικά.
Αυτό το μοντέλο θα είναι ίδιο με το αρχικό, μόνο που στην ανδεχόμενη μετάβαση από αριστερά στα δεξιά μεσολαβεί το κέντρο.